package airthmetic.exercise.recursion;

// 递归(Recursion)是一种非常广泛的算法，与其说递归是一种算法不如说递归是一种编程技巧
// 递归在维基百科的官方解释为：递归(Recursion),又名递回。
// 在数学与计算机科学中，是指在函数的定义中使用函数自身的方法。
// 英文Recursion也就是重复发生，再次重现的意思。 而对应的中文翻译 ”递归“ 却表达了两个意
// 思：”递“＋”归“。 这两个意思，正是递归思想的精华所在，去的过程叫做递，回来的过程叫做归。
// 在编程语言中对递归可以简单理解为：方法自己调用自己，只不过每次调用时参数不同而已。
public class Main {
    public static int f(int n) {
        if (n == 1){
            return 1;
        }
        return f(n-1) + 1;
    }

    public static void main(String[] args) {
        System.out.println(f(3));
    }
}
